package threat;

/**
 * java中所有的代码都是靠线程执行的，main方法也不例外，执行main方法的线程
 * 是由JVM自动创建的，我们通常称它为主线程
 * <p>
 * 线程提供了一个静态方法:
 * static Thread currentThread()
 * 可以获取运行该方法的线程
 */
public class ThreadInfoDemo {
    public static void main(String[] args) {
        Thread main = Thread.currentThread();//获取主线程
        System.out.println(main);
        doSome();//主线程执行doSome方法
    }

    public static void doSome() {
        //获取的是调用doSome方法的线程
        Thread t = Thread.currentThread();
        System.out.println("运行doSome方法的线程是:" + t);
        //获取线程的名字
        String name = t.getName();
        System.out.println("线程的名字是:" + name);
        //id:唯一标识
        long id = t.getId();
        System.out.println("线程的唯一标识:" + id);
        //获取线程的优先级
        int priority = t.getPriority();
        System.out.println("线程的优先级是:" + priority);
        //判断线程是否活着
        boolean isAlive = t.isAlive();
        //判断是否为守护线程
        boolean isDaemon = t.isDaemon();
        //判断线程是否被中断
        boolean isInterrupted = t.isInterrupted();
        System.out.println("线程是否活着:" + isAlive);
        System.out.println("线程是否为守护线程:" + isDaemon);
        System.out.println("线程是否被中断:" + isInterrupted);


    }
}